(T) Final Deliverables

Submit your final deliverables as a team

Purpose

We would like you to have a complete and comprehensive way to demonstrate and appreciate your work this semester. Also we would like you to have a way to share your work with your peers. These two deliverables are designed to highlight for us and for yourself what you have achieved.

What to submit to Gradescope

  • nanoTwitter Github Repo(s) - Zipped up
  • Final Report (See below)

Events

  • We will have scalability runoffs on the last two days of class
  • Each team is required to attend to a Zoom final demo meeting with Pito

The final demo meeting

  • I will ask you to demonstrate your nanoTwitter running on Digital Ocean.
  • This will be a demo not a scalability challenge.
  • During the demo we will both be able to ask the team members questions about your demo and your report.
  • The meeting is scheduled for 30 minutes but will probably run less.
  • Use this link

How nanoTwitter will be evaluated

  • Checklist
    • Use this as a helpful checklist
    • Has most of the functionality as defined in Nano Twitter Project Outline implemented.
    • You won’t get dinged for little oversights or divergence.
    • If you have a specific reason why in your approach, certain functionality didn’t make sense, make sure you tell us
  • Crucial Functionality
    • Login, Logout, Register
    • Tweet, Follow
    • Hashtags
    • Search
    • Test API
    • Validation API
  • Quality of the engineering.
    • How is the design, is it broken down into some classes?
    • Are the classes and methods reasonably brief.
    • How does the code look?
    • Are there tests and are they being run automatically?
  • Quality of the Scalability.
    • How well does the nT perform under load from loader.io using the specific testing rules that we described.
    • What steps did you take to help it scale better?
    • Which of the patterns and concepts that we learned in class did you use?
    • And what is final result?
  • Bugs
    • When under load, does it keep “working”?
    • Does it crash? Does it give incorrect answers?
  • Fit and Finish.
    • Does the final product look professional and clean? Did you read the requirements (from me) broadly and go beyond the very minimum? Or did you just barely get it to work? Does it look good and show pride of work?
  • Github + Readme
    • You will be submitting the github directory with the code in it
    • Include detailed instructions on how to run it
    • Include all the relevant URLs (Github, Digital Ocean, Heroku or others)
    • Mention important parts of your design and architecture
    • For submission, zip up your github repo and submit to Latte

Final Report

  • Requirements:
    • 5-10 page technical report, as a pdf
    • Audience is a technical reader
    • A college level quality paper or report.
    • Should be professional, neat and clean, cohesive and readable
    • In good english
  • Content
    • Remember that this course is about Scalability
    • Describe key architecture, both basic and specifically appealing to scalability
    • Scaling techniques applied
    • Key concepts, abstractions, services
    • Include what you are especially proud of
    • Team members, dates